#include "widget.h"
#include "ui_widget.h"
#include <QDebug>

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    connect(ui->pushButton, &QPushButton::clicked, this, &Widget::handleClick);
}

Widget::~Widget()
{
    delete ui;
}

void Widget::handleClick()
{
    this->setWindowTitle("标题1");
    qDebug() << "handleClick";
}

void Widget::handleClick2()
{
    this->setWindowTitle("标题2");
    qDebug() << "handleClick";
}

void Widget::on_pushButton_2_clicked()
{
    // 先断开原来的信号槽函数
    // 如果没有disconnect，那么就会构成一个信号绑定了两个槽函数，那么两个函数都会执行
    disconnect(ui->pushButton, &QPushButton::clicked, this, &Widget::handleClick);
    // 给第一个按钮，重新绑定一个新的槽函数，如果再次点击第一个按钮，那么就会执行另一个函数，也就是修改标题为 标题2
    connect(ui->pushButton, &QPushButton::clicked, this, &Widget::handleClick2);
}
